//这里是结构体

#include <stdio.h>
//声明结构体
/*
struct student
{
    char name[20];
    int age;
    float weight;
};
*/

/*
声明并定义
struct student
{
    char name[20];
    int age;
    float weight;
}a;

*/

/*
typedef struct student{
    char name[20];
    int age;
    float weight;

}stu,*stup;

类型        struct student      ->      stu
指针        struct student*     ->      stup
变量        struct student      ->      stu a 
变量指针    struct student*     ->      stup b
*/

//注意：如果结构体里面没有 本指针 定义，就可以省略结构体名，如果有指针定义，就不能省略结构体名

//分别用两种方法来添加结构体内容
typedef struct student{
    char name[20];
    int age;
    float weight;
    int score;
}stu,*stup;

int main(){
    stu a;
    stup b;
    b = (stup)malloc(sizeof(stup));

    printf("输入第一个姓名：");
    scanf("%s",&a);
    a.age=24;
    a.weight=70.1;
    a.score=150;
    printf("第一个学生的信息是：%s %d %f %d",a.name,a.age,a.weight,a.score);

    printf("输入第二个姓名：");
    scanf("%s",b->name);
    b->age=18;
    b->weight=65.2;
    b->score=140;
    printf("第一个学生的信息是：%s %d %f %d",b->name,b->age,b->weight,b->score);
    return 0;
}